﻿using System;
using System.Windows.Forms;

namespace CentroVentas.Funciones.Usuarios
{
    public partial class FunUsuariosAgregar : Form
    {
        public FunUsuariosAgregar()
        {
            InitializeComponent();
        }

        private void txtRut_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == '\r' && !String.IsNullOrWhiteSpace(txtRut.Text))
            {
                if (Clases.RUT.Valido(txtRut.Text))
                {
                    if (!Clases.Usuarios.ExisteUsuario(txtRut.Text))
                    {

                    }
                    else
                    {
                        Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.ERROR, "Existe usuario", 7);
                        limpiarCampos();
                    }
                }
                else
                {
                    Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.ERROR, "Rut no valido", 5);
                    limpiarCampos();
                }
            }

        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnCrear_Click(object sender, EventArgs e)
        {
           if (!String.IsNullOrWhiteSpace(txtNom.Text))
            {
                if (!String.IsNullOrWhiteSpace(txtEmail.Text))
                {
                    if(!String.IsNullOrWhiteSpace(txtPass.Text) || (txtPass.Text != txtPassRep.Text))
                    {
                        if (Clases.Usuarios.CrearUsuario(txtRut.Text, txtNom.Text, txtPass.Text, txtEmail.Text,Convert.ToInt32(cboUsu.SelectedValue) ))
                        {
                            Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.OK,"Datos almacenados.",0);
                            this.Dispose();                     
                        }
                        else
                        {
                            Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.ERROR, "Hubo algún problema para crear el usuario, inténtelo de nuevo.", 100);
                        }
                    }
                    else
                    {
                        Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.ERROR,"Debe ingresar una contraseña.",101);
                    }
                   
                }
                else
                {
                    Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.ERROR, "Debe escribir un correo electronico.", 102);
                }
            }
            else
            {
                Clases.Utiles.Utilidades.mensaje(Clases.Utiles.TipoMensaje.ERROR,"Debe escribir un nombre.",8);
            }
        }

        private void FunUsuariosAgregar_Load(object sender, EventArgs e)
        {
            cboUsu.DataSource = Clases.Usuarios.GetTipoUsuarioComboBox().Tables["TipoUsuarios"];
            cboUsu.ValueMember = "id";
            cboUsu.DisplayMember = "descripcion";
        }

        private void limpiarCampos()
        {
            txtRut.Clear();
            txtNom.Clear();
            txtPass.Clear();
            txtEmail.Clear();
        }


    
    }
}
